var c: string | number = '10' // 定义一个联合类型变量c


// 定义一个类型别名
type styleType = string | number

// 定义变量约束类型时可以直接使用类型别名
var d: styleType = 10
d = '10'


// 接口也可以使用类型别名的方式
interface muchType1 {
    name: string
}
interface muchType2 {
    age: number
}
type muchType = muchType1 | muchType2
var e: muchType = { name: '张三' }


// 限制字符串的选择
type sex = '男' | '女'
function getSex(s: sex): string {
    return s
}
// getSex('1') // 报错
getSex('男') // 正确